/**
 * @description 解析用户token 
 * @author 宫彦胜
 */

 // 引入jwt , jwt 生成和解析jwt 的
 const util = require("util")
 const jwt = require('jsonwebtoken')
 const verify = util.promisify(jwt.verify)
 const { JWT_SECRET_KEY } = require('../conf/secretKeys')


// 解析jwt 获取用户信息的
async function getUserInfo(ctx,next){
  const token = ctx.header.authorization
  // 3. 解析其中的内容， 因为传进来的时候 有 一个 Bearer 空格 需要拆分一下
  const res = await verify(token.split(" ").pop(),JWT_SECRET_KEY);
  ctx.userInfo = res
  await next()
}

module.exports = getUserInfo


